// pages/mtest/companybus/passenger/passenger.js

const app=getApp()
const networkUtil=app.globalData.networkUtil
const networkUtilV2=app.globalData.networkUtilV2
const util=app.globalData.util

const logPrefix="companybus.passenger"

Page({

	/**
	 * 页面的初始数据
	 */
	data: {
		busno_input: null,

		//展示的乘车信息
		busno: null,
		busname: null,
		createTime: null,
		qrcodeStr_busno: null,


	},

	/**
	 * 生命周期函数--监听页面加载
	 */
	onLoad: function (options) {
		let that=this
		
		//根据班车编号busno获取对应的二维码。
		//that.getCompanyBusQrcode()
		
	},

	/**
	 * 扫码上车,二维码由班车编号busno转换而成。
	 */
	scanQrcode_busno: function () {
		let that = this

		wx.scanCode({
			onlyFromCamera: true,
			success(res) {
				console.info(logPrefix + ".scanQrcode_busno()", res)
				that.setData({
					busno_input: res.result
				})
				
				/**
				 * 1、存入乘车信息。
				 */
				that.addPassenger().then((res)=>{
					/**
					 * 1-2、获取员工最新的乘车信息。
					 */
					if(app.globalData.SUCCESS_STR==res){
						that.getLatestPassenger()
					}
				})
			},
			fail(res) {
				console.error(logPrefix + ".scanQrcode_busno(),扫描二维码出错!", res)
				util.showToast("扫描二维码出错!")
			}
		})
	},
	
	/**
	 * 根据班车编号busno获取对应的二维码。
	 */
	getCompanyBusQrcode: function(){
		let that=this
		let url = app.globalData.baseUrl +"/companybus/getCompanyBusQrcode"
		let requestData={
			busno: "苏J-12345"
		}

		networkUtil.request_get(url,requestData).then((res)=>{
			//若已获取到
			that.setData({
				qrcodeStr_busno: res.data.qrcodeStr
			})
		}).catch((res)=>{
			//若未获取到
			console.error(logPrefix +" getCompanyBusQrcode(),获取班车编号二维码出错!")
			util.showToastWithMsg("获取班车编号二维码出错", res.message)
		})
	},

	/**
	 * 存入乘车信息。
	 */
	addPassenger: function(){
		let that=this
		let url=app.globalData.baseUrl+"/companybus/addPassenger"
		let requestData={
			busno: that.data.busno_input
		}

		return networkUtilV2.httpPost(url,requestData).then((res)=>{
			//若提交成功
			util.showToast("提交乘车信息成功!")
			return app.globalData.SUCCESS_STR
		}).catch((res)=>{
			//若提交失败
			console.error(logPrefix +" addPassenger(),提交乘车信息出错!", res)
			util.showToastWithMsg("提交乘车信息出错!",res.message)
			return app.globalData.ERROR_STR
		})
	},

	/**
	 * 获取员工最新的乘车信息。
	 */
	getLatestPassenger: function(){
		let that=this
		let url=app.globalData.baseUrl+"/companybus/getLatestPassenger"
		let requestData={}

		networkUtil.request_get(url,requestData,false).then((res)=>{
			//若已获取到
			that.setData({
				busno: res.data.busno,
				busname: res.data.busname,
				createTime: res.data.createTime
			})
		}).catch((res)=>{
			//若未获取到
			console.error(logPrefix +" getLatestPassenger(),获取员工最新的乘车信息,出错!",res)
			util.showToastWithMsg("获取乘车信息出错!",res.message)
		})
	},


	/**
	 * 生命周期函数--监听页面初次渲染完成
	 */
	onReady: function () {

	},

	/**
	 * 生命周期函数--监听页面显示
	 */
	onShow: function () {

	},

	/**
	 * 生命周期函数--监听页面隐藏
	 */
	onHide: function () {

	},

	/**
	 * 生命周期函数--监听页面卸载
	 */
	onUnload: function () {

	},

	/**
	 * 页面相关事件处理函数--监听用户下拉动作
	 */
	onPullDownRefresh: function () {

	},

	/**
	 * 页面上拉触底事件的处理函数
	 */
	onReachBottom: function () {

	},

	/**
	 * 用户点击右上角分享
	 */
	onShareAppMessage: function () {

	}
})